package Main;

import java.util.*;

public class FixChars {
	
	private static boolean isGoodChar(char c){
		return (c>=0 & c<256);
	}
	
	public static String fixString(String s1){
		int len=s1.length();
		int i=0;
		while (i<len){
			char ch=s1.charAt(i);
			if (!isGoodChar(ch))
			{
				Character fixed=fix.get(ch);
				if (fixed==null){
					s1=s1.substring(0,i)+s1.substring(i+1);
					System.out.println("bad char : "+s1.charAt(i)+","+((int)s1.charAt(i)));
					len--;
				}
				else{
					s1=s1.substring(0,i)+fixed+s1.substring(i+1);
					i++;
				}
			}
			else{
				i++;
			}
		}
		return s1;
	}
	
	private static HashMap<Character, Character> fix;
	
	static {
		fix=new HashMap<Character, Character>();
		fix.put((char)8211, '-');
	}
	
/*	private static TreeSet<Character> goodChar;
	
	static {
		System.out.println("AAA");//TODO
		goodChar=new TreeSet<Character>();
		for(int i=0;i<10;i++)
			goodChar.add((char)('0'+i));
		for(int i=0;i<26;i++){
			goodChar.add((char)('a'+i));
			goodChar.add((char)('A'+i));
		}
		goodChar.add(';');
		goodChar.add('!');
		goodChar.add('@');
		goodChar.add('#');
		goodChar.add('$');
		goodChar.add('%');
		goodChar.add('^');
		goodChar.add('&');
		goodChar.add('*');
		goodChar.add('(');
		goodChar.add(')');
		goodChar.add('-');
		goodChar.add('+');
	}*/
}
